//C implementation of ultrasound simulation


typedef struct
{
	double x;
	double y;
	double z;
} Coordinates;

typedef struct
{
	double real;
	double imag;
} Complex;

typedef struct
{
	double time;
	Complex weight;
} Arrival;

/////input configs

//double centerFreq;
double sampFreq = 40;
//int numCycles;
double speedOfSound = 1.54;
double zFocus = 20;
int numAlines = 200;
int numEmitters = 192;
int numScatterers = 1000;
 

//input arrays

double *aLines;
double *emitters;
Complex *apodizations;
Coordinates *scatters;

// work arrays
Arrival *arrival;
double *timeOfFire;
double *timeElemFocus;

//output array
Complex **results;


int main (int argc, char **argv)
{
	GetSettings();
	LoadData();
	CalcResult();
	OutputData();
	return 0;
}